/*
* 1.Axios如何传递参数的 get post
2.路由传参

3.注册组件
全局：

局部：

4.Vue中事件的修饰符

5.Vuex五个属性
6.过滤器
多个过滤器一起用：{{参数 | 过滤器1 | 过滤器2 | 过滤器3}}
7.v-for 中:key什么作用
8.回调函数，箭头函数this
9.vue常用指令
1.v-once
能执行一次性地插值，当数据改变时，插值处的内容不会更新。但请留心这会影响到该节点上的其它数据
2.v-show
和v-if一样 区别是if是注释掉 v-show是给一个display：none的属性 让它不显示！ 用法 参考下一个v-if指令.
3.v-if
v-if后面的是一个表达式或者也可以是返回true或false的表达式。 且值为true和fasle false的话就会被注释 v-show是给一个display：none的属性 让它不显示！ true就正常显示。
4.v-else
必须和v-if一起用才可以 不能单独用 而且必须在v-if下面 中间有别的标签也会报错
6.v-for
基于数据渲染一个列表，类似于JS中的遍历。其数据类型可以是 Array | Object | number | string
7.v-model
用于数据的双向绑定操作.
8.v-on
绑定事件的
9.v-bind
用于绑定数据和元素属性的

10.vue的常见属性
1.el属性
vue中el属性的作用是指示vue编译器解析的位置，是一个占位符。
2.data属性
vue中data属性的作用是用于将组织从view中抽象出，可以将视图的数据抽象出来并存放在data中。
3.template属性
vue中template属性的作用是设置模板，使用template属性可以替换页面中的元素或占位符。
4.methods属性
vue中methods属性的作用是用于放置页面中的业务逻辑，一般用于放置js方法。
5.computed属性
vue中computed属性是一个计算属性，常用于处理一些复杂逻辑。
6.watch属性
vue中watch属性是一个监听属性，通过watch属性可以响应数据的变化。
11.组件切换
1.组件占位符
<component :is="组件名称 "></component>
2.路由切换
3.v-show v-if

12.路由的本质，怎么修改
A标签 tag修改

13.路由的属性
1.to属性，跳转链接；2.replace属性，页面切换时不会留下历史记录；3.tag属性，渲染成响应的标签；4.exat属性，开启“router-link”的严格模式；
14.组件间的传值
父传子：
子组件用props声明它期望获的数据
var childNode = {
  template: `
        <div>
          {{forChildMsg}}
        </div>
        `,
  props: ["forChildMsg "]
};
父组件中的占位符添加特性的方式来传递数据。
var parentNode = {
  template: `
        <div>
          <p>parentNode</p>
          <child for-child-msg="aaa"></child>
          <child for-child-msg="bbb"></child>
        </div>
        `,
  components: {
    child: childNode
  }
};
使用v-bind绑定
var parentNode = {
  template: `
        <div>
          <p>parentNode</p>
          <child :for-child-msg="childMsg1"></child>
          <child :for-child-msg="childMsg2"></child>
        </div>
        `,
  components: {
    child: childNode
  },
  data: function() {
    return {
      childMsg1: "Dynamic props msg for child-1",
      childMsg2: "Dynamic props msg for child-2"
    };
  }
};
子传父
1.在子组件上绑定某个事件以及事件的触发函数
<template>
<div>
	<Tree :data="treeData" show-checkbox ref="treeData"></Tree>
	<Button type="success" @click="submit"></Button>
</div>
</template>

 @=v-on  @click 即v-on:click

事件在子组件中触发的函数
submit(){
  this.$emit('getTreeData',this.$refs.treeData.getCheckedNodes());
},

在父组件中绑定触发事件
<AuthTree  @getTreeData='testData'>
</AuthTree>
//@getTreeData='testData($event)'
父组件触发函数显示子组件传递的数据
testData(data){
      console.log("parent");
      console.log(data)
},
2.不需要在子组件中触发事件
子组件中绑定ref
<template>
<div>
<Tree :data="treeData" show-checkbox ref="treeData"></Tree>
</div>
</template>

然后在子组件中定义一个函数，
这个函数是父组件可以直接调用的。
函数的返回值定义为我们需要的数据。
getData(){
        return this.$refs.treeData.getCheckedNodes()
    },

然后再父组件注册子组件后绑定ref，
调用子组件的函数获取数据
<AuthTree ref="authTree">
          </AuthTree>
父组件函数调用
console.log( this.$refs.authTree.getData());
*
* */
